home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-06-17 | 18.3 KB | 1,511 lines | [TEXT/3PRM] |
- .comp 914 010111011
- .code 0 0 0
- .start _nostart_
- .depend "StdBool"
- .depend "StdMisc"
- .depend "StdOverloaded"
- .depend "StdInt"
- .endinfo
- .implab _cycle_in_spine
- .implab _type_error
- .implab _hnf
- .impdesc _ind
- .implab _indirection _eaind
- .impdesc e_system_dif
- .implab e_system_nif e_system_eaif
- .impdesc e_system_dAP
- .implab e_system_nAP e_system_eaAP
- .implab e_system_sif
- .implab e_system_sAP
- .impdesc _Cons
- .impdesc _Nil
- .impdesc _Tuple
- .impdesc d_S.1
- .implab n_S.1 ea_S.1
- .impdesc d_S.2
- .implab n_S.2 ea_S.2
- .impdesc d_S.3
- .implab n_S.3 ea_S.3
- .impdesc d_S.4
- .implab n_S.4 ea_S.4
- .impdesc d_S.5
- .implab n_S.5 ea_S.5
- .impdesc d_S.6
- .implab n_S.6 ea_S.6
- .implab _driver
- .string m_StdInt "StdInt"
- .implab e_StdMisc_sabort
- .export e_StdInt_d+;i
- .export e_StdInt_s+;i
- .export e_StdInt_n+;i
- .desc e_StdInt_d+;i e_StdInt_n+;i e_StdInt_l+;i 2 "+ (Int)"
- .o 2 0
- e_StdInt_l+;i
- repl_args 1 1
- .d 2 0
- jsr ea3
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_d+;i
- .o 1 0
- e_StdInt_n+;i
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea3
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea3
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_s+;i
- .o 0 2 ii
- s3
- .inline +;i
- addI
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_d-;i
- .export e_StdInt_s-;i
- .export e_StdInt_n-;i
- .desc e_StdInt_d-;i e_StdInt_n-;i e_StdInt_l-;i 2 "- (Int)"
- .o 2 0
- e_StdInt_l-;i
- repl_args 1 1
- .d 2 0
- jsr ea4
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_d-;i
- .o 1 0
- e_StdInt_n-;i
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea4
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea4
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_s-;i
- .o 0 2 ii
- s4
- .inline -;i
- subI
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_dzero;i
- .export e_StdInt_szero;i
- .export e_StdInt_nzero;i
- .desc e_StdInt_dzero;i e_StdInt_nzero;i e_StdInt_lzero;i 0 "zero (Int)"
- .o 1 0
- e_StdInt_lzero;i
- halt
- .n 0 e_StdInt_dzero;i
- .o 1 0
- e_StdInt_nzero;i
- push_node _cycle_in_spine 0
- .d 0 0
- jsr ea5
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 0 0
- ea5
- .o 0 0
- e_StdInt_szero;i
- .o 0 0
- s5
- .inline zero;i
- pushI 0
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_d*;i
- .export e_StdInt_s*;i
- .export e_StdInt_n*;i
- .desc e_StdInt_d*;i e_StdInt_n*;i e_StdInt_l*;i 2 "* (Int)"
- .o 2 0
- e_StdInt_l*;i
- repl_args 1 1
- .d 2 0
- jsr ea6
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_d*;i
- .o 1 0
- e_StdInt_n*;i
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea6
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea6
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_s*;i
- .o 0 2 ii
- s6
- .inline *;i
- mulI
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_d/;i
- .export e_StdInt_s/;i
- .export e_StdInt_n/;i
- .desc e_StdInt_d/;i e_StdInt_n/;i e_StdInt_l/;i 2 "/ (Int)"
- .o 2 0
- e_StdInt_l/;i
- repl_args 1 1
- .d 2 0
- jsr ea7
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_d/;i
- .o 1 0
- e_StdInt_n/;i
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea7
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea7
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_s/;i
- .o 0 2 ii
- s7
- .inline /;i
- divI
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_done;i
- .export e_StdInt_sone;i
- .export e_StdInt_none;i
- .desc e_StdInt_done;i e_StdInt_none;i e_StdInt_lone;i 0 "one (Int)"
- .o 1 0
- e_StdInt_lone;i
- halt
- .n 0 e_StdInt_done;i
- .o 1 0
- e_StdInt_none;i
- push_node _cycle_in_spine 0
- .d 0 0
- jsr ea8
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 0 0
- ea8
- .o 0 0
- e_StdInt_sone;i
- .o 0 0
- s8
- .inline one;i
- pushI 1
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_d^;i
- .export e_StdInt_s^;i
- .export e_StdInt_n^;i
- .desc e_StdInt_d^;i e_StdInt_n^;i e_StdInt_l^;i 2 "^ (Int)"
- .o 2 0
- e_StdInt_l^;i
- repl_args 1 1
- .d 2 0
- jsr ea9
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_d^;i
- .o 1 0
- e_StdInt_n^;i
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea9
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea9
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_s^;i
- .o 0 2 ii
- s9
- pushI 0
- push_b 2
- ltI
- jmp_false else.1
- jmp then.1
- then.1
- buildAC "^ (Int) called with negative power argument"
- pop_b 2
- .d 1 0
- jsr e_StdMisc_sabort
- .o 1 0
- pushI_a 0
- pop_a 1
- .d 0 1 i
- rtn
- else.1
- push_b 1
- push_b 1
- update_b 1 3
- update_b 0 2
- pop_b 2
- .d 0 2 ii
- jmp s2
- .o 0 2 ii
- s2
- eqI_b 0 1
- jmp_true case.2
- jmp case.3
- case.2
- pop_b 2
- pushI 1
- .d 0 1 i
- rtn
- case.3
- push_b 1
- pushI 1
- and%
- pushI 0
- eqI
- jmp_false else.4
- jmp then.4
- then.4
- pushI 1
- push_b 2
- shiftr%
- push_b 1
- update_b 1 3
- update_b 0 2
- pop_b 2
- .d 0 2 ii
- jsr s2
- .o 0 1 i
- push_b 0
- push_b 1
- update_b 1 2
- update_b 0 1
- pop_b 1
- mulI
- .d 0 1 i
- rtn
- else.4
- pushI 1
- push_b 2
- shiftr%
- push_b 1
- .d 0 2 ii
- jsr s2
- .o 0 1 i
- push_b 0
- push_b 2
- mulI
- push_b 1
- push_b 1
- update_b 1 2
- update_b 0 1
- pop_b 1
- update_b 1 4
- update_b 0 3
- pop_b 3
- mulI
- .d 0 1 i
- rtn
- .export e_StdInt_dabs;i
- .export e_StdInt_sabs;i
- .export e_StdInt_nabs;i
- .desc e_StdInt_dabs;i e_StdInt_nabs;i e_StdInt_labs;i 1 "abs (Int)"
- .o 2 0
- e_StdInt_labs;i
- pop_a 1
- .d 1 0
- jsr ea10
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 1 e_StdInt_dabs;i
- .o 1 0
- e_StdInt_nabs;i
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea10
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 1 0
- ea10
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_sabs;i
- .o 0 1 i
- s10
- pushI 0
- push_b 1
- ltI
- jmp_false else.5
- jmp then.5
- then.5
- push_b 0
- pushI 0
- update_b 1 2
- update_b 0 1
- pop_b 1
- subI
- .d 0 1 i
- rtn
- else.5
- .d 0 1 i
- rtn
- .export e_StdInt_dsign;i
- .export e_StdInt_ssign;i
- .export e_StdInt_nsign;i
- .desc e_StdInt_dsign;i e_StdInt_nsign;i e_StdInt_lsign;i 1 "sign (Int)"
- .o 2 0
- e_StdInt_lsign;i
- pop_a 1
- .d 1 0
- jsr ea11
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 1 e_StdInt_dsign;i
- .o 1 0
- e_StdInt_nsign;i
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea11
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 1 0
- ea11
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_ssign;i
- .o 0 1 i
- s11
- pushI 0
- push_b 1
- eqI
- jmp_false else.6
- jmp then.6
- then.6
- pop_b 1
- pushI 0
- .d 0 1 i
- rtn
- else.6
- pushI 0
- push_b 1
- update_b 1 2
- update_b 0 1
- pop_b 1
- ltI
- jmp_false else.7
- jmp then.7
- then.7
- pushI -1
- .d 0 1 i
- rtn
- else.7
- pushI 1
- .d 0 1 i
- rtn
- .export e_StdInt_d~;i
- .export e_StdInt_s~;i
- .export e_StdInt_n~;i
- .desc e_StdInt_d~;i e_StdInt_n~;i e_StdInt_l~;i 1 "~ (Int)"
- .o 2 0
- e_StdInt_l~;i
- pop_a 1
- .d 1 0
- jsr ea12
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 1 e_StdInt_d~;i
- .o 1 0
- e_StdInt_n~;i
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea12
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 1 0
- ea12
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_s~;i
- .o 0 1 i
- s12
- .inline ~;i
- pushI 0
- subI
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_d==;i
- .export e_StdInt_s==;i
- .export e_StdInt_n==;i
- .desc e_StdInt_d==;i e_StdInt_n==;i e_StdInt_l==;i 2 "== (Int)"
- .o 2 0
- e_StdInt_l==;i
- repl_args 1 1
- .d 2 0
- jsr ea13
- .o 0 1 b
- buildB_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_d==;i
- .o 1 0
- e_StdInt_n==;i
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea13
- .o 0 1 b
- fillB_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea13
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_s==;i
- .o 0 2 ii
- s13
- .inline ==;i
- eqI
- .end
- .d 0 1 b
- rtn
- .export e_StdInt_d<;i
- .export e_StdInt_s<;i
- .export e_StdInt_n<;i
- .desc e_StdInt_d<;i e_StdInt_n<;i e_StdInt_l<;i 2 "< (Int)"
- .o 2 0
- e_StdInt_l<;i
- repl_args 1 1
- .d 2 0
- jsr ea14
- .o 0 1 b
- buildB_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_d<;i
- .o 1 0
- e_StdInt_n<;i
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea14
- .o 0 1 b
- fillB_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea14
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_s<;i
- .o 0 2 ii
- s14
- .inline <;i
- ltI
- .end
- .d 0 1 b
- rtn
- .export e_StdInt_dtoInt;i
- .export e_StdInt_stoInt;i
- .export e_StdInt_ntoInt;i
- .desc e_StdInt_dtoInt;i e_StdInt_ntoInt;i e_StdInt_ltoInt;i 1 "toInt (Int)"
- .o 2 0
- e_StdInt_ltoInt;i
- pop_a 1
- .d 1 0
- jsr ea15
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 1 e_StdInt_dtoInt;i
- .o 1 0
- e_StdInt_ntoInt;i
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea15
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 1 0
- ea15
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_stoInt;i
- .o 0 1 i
- s15
- .inline toInt;i
- no_op
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_dtoChar;i
- .export e_StdInt_stoChar;i
- .export e_StdInt_ntoChar;i
- .desc e_StdInt_dtoChar;i e_StdInt_ntoChar;i e_StdInt_ltoChar;i 1 "toChar (Int)"
- .o 2 0
- e_StdInt_ltoChar;i
- pop_a 1
- .d 1 0
- jsr ea16
- .o 0 1 c
- buildC_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 1 e_StdInt_dtoChar;i
- .o 1 0
- e_StdInt_ntoChar;i
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea16
- .o 0 1 c
- fillC_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 1 0
- ea16
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_stoChar;i
- .o 0 1 i
- s16
- .inline toChar;i
- ItoC
- .end
- .d 0 1 c
- rtn
- .export e_StdInt_dtoReal;i
- .export e_StdInt_stoReal;i
- .export e_StdInt_ntoReal;i
- .desc e_StdInt_dtoReal;i e_StdInt_ntoReal;i e_StdInt_ltoReal;i 1 "toReal (Int)"
- .o 2 0
- e_StdInt_ltoReal;i
- pop_a 1
- .d 1 0
- jsr ea17
- .o 0 2 r
- buildR_b 0
- pop_b 2
- .d 1 0
- rtn
- .n 1 e_StdInt_dtoReal;i
- .o 1 0
- e_StdInt_ntoReal;i
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea17
- .o 0 2 r
- fillR_b 0 0
- pop_b 2
- .d 1 0
- rtn
- .o 1 0
- ea17
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_stoReal;i
- .o 0 1 i
- s17
- .inline toReal;i
- ItoR
- .end
- .d 0 2 r
- rtn
- .export e_StdInt_dtoString;i
- .export e_StdInt_stoString;i
- .export e_StdInt_ntoString;i
- .desc e_StdInt_dtoString;i e_StdInt_ntoString;i e_StdInt_ltoString;i 1 "toString (Int)"
- .o 2 0
- e_StdInt_ltoString;i
- pop_a 1
- .d 1 0
- jsr ea18
- .o 1 0
- create
- push_a 1
- fill ARRAY 1 _hnf 1
- update_a 0 1
- pop_a 1
- .d 1 0
- rtn
- .n 1 e_StdInt_dtoString;i
- .o 1 0
- e_StdInt_ntoString;i
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea18
- .o 1 0
- push_a 0
- fill ARRAY 1 _hnf 2
- pop_a 1
- .d 1 0
- rtn
- .o 1 0
- ea18
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_stoString;i
- .o 0 1 i
- s18
- .inline toString;i
- .d 0 1 i
- jsr ItoAC
- .o 1 0
- .end
- .d 1 0
- rtn
- .export e_StdInt_dfromInt;i
- .export e_StdInt_sfromInt;i
- .export e_StdInt_nfromInt;i
- .desc e_StdInt_dfromInt;i e_StdInt_nfromInt;i e_StdInt_lfromInt;i 1 "fromInt (Int)"
- .o 2 0
- e_StdInt_lfromInt;i
- pop_a 1
- .d 1 0
- jsr ea19
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 1 e_StdInt_dfromInt;i
- .o 1 0
- e_StdInt_nfromInt;i
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea19
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 1 0
- ea19
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_sfromInt;i
- .o 0 1 i
- s19
- .inline fromInt;i
- no_op
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_dfromInt;c
- .export e_StdInt_sfromInt;c
- .export e_StdInt_nfromInt;c
- .desc e_StdInt_dfromInt;c e_StdInt_nfromInt;c e_StdInt_lfromInt;c 1 "fromInt (Char)"
- .o 2 0
- e_StdInt_lfromInt;c
- pop_a 1
- .d 1 0
- jsr ea20
- .o 0 1 c
- buildC_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 1 e_StdInt_dfromInt;c
- .o 1 0
- e_StdInt_nfromInt;c
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea20
- .o 0 1 c
- fillC_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 1 0
- ea20
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_sfromInt;c
- .o 0 1 i
- s20
- .inline fromInt;c
- ItoC
- .end
- .d 0 1 c
- rtn
- .export e_StdInt_dfromInt;r
- .export e_StdInt_sfromInt;r
- .export e_StdInt_nfromInt;r
- .desc e_StdInt_dfromInt;r e_StdInt_nfromInt;r e_StdInt_lfromInt;r 1 "fromInt (Real)"
- .o 2 0
- e_StdInt_lfromInt;r
- pop_a 1
- .d 1 0
- jsr ea21
- .o 0 2 r
- buildR_b 0
- pop_b 2
- .d 1 0
- rtn
- .n 1 e_StdInt_dfromInt;r
- .o 1 0
- e_StdInt_nfromInt;r
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea21
- .o 0 2 r
- fillR_b 0 0
- pop_b 2
- .d 1 0
- rtn
- .o 1 0
- ea21
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_sfromInt;r
- .o 0 1 i
- s21
- .inline fromInt;r
- ItoR
- .end
- .d 0 2 r
- rtn
- .export e_StdInt_dfromInt;#
- .export e_StdInt_sfromInt;#
- .export e_StdInt_nfromInt;#
- .desc e_StdInt_dfromInt;# e_StdInt_nfromInt;# e_StdInt_lfromInt;# 1 "fromInt ({#})"
- .o 2 0
- e_StdInt_lfromInt;#
- pop_a 1
- .d 1 0
- jsr ea22
- .o 1 0
- create
- push_a 1
- fill ARRAY 1 _hnf 1
- update_a 0 1
- pop_a 1
- .d 1 0
- rtn
- .n 1 e_StdInt_dfromInt;#
- .o 1 0
- e_StdInt_nfromInt;#
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea22
- .o 1 0
- push_a 0
- fill ARRAY 1 _hnf 2
- pop_a 1
- .d 1 0
- rtn
- .o 1 0
- ea22
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_sfromInt;#
- .o 0 1 i
- s22
- .inline fromInt;#
- .d 0 1 i
- jsr ItoAC
- .o 1 0
- .end
- .d 1 0
- rtn
- .export e_StdInt_dmod
- .export e_StdInt_smod
- .export e_StdInt_nmod
- .desc e_StdInt_dmod e_StdInt_nmod e_StdInt_lmod 2 "mod"
- .o 2 0
- e_StdInt_lmod
- repl_args 1 1
- .d 2 0
- jsr ea23
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_dmod
- .o 1 0
- e_StdInt_nmod
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea23
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea23
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_smod
- .o 0 2 ii
- s23
- .inline mod
- modI
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_drem
- .export e_StdInt_srem
- .export e_StdInt_nrem
- .desc e_StdInt_drem e_StdInt_nrem e_StdInt_lrem 2 "rem"
- .o 2 0
- e_StdInt_lrem
- repl_args 1 1
- .d 2 0
- jsr ea24
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_drem
- .o 1 0
- e_StdInt_nrem
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea24
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea24
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_srem
- .o 0 2 ii
- s24
- .inline rem
- push_b 1
- push_b 2
- push_b 2
- divI
- mulI
- update_b 0 2
- pop_b 1
- subI
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_dgcd
- .export e_StdInt_sgcd
- .export e_StdInt_ngcd
- .desc e_StdInt_dgcd e_StdInt_ngcd e_StdInt_lgcd 2 "gcd"
- .o 2 0
- e_StdInt_lgcd
- repl_args 1 1
- .d 2 0
- jsr ea25
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_dgcd
- .o 1 0
- e_StdInt_ngcd
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea25
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea25
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_sgcd
- .o 0 2 ii
- s25
- push_b 1
- .d 0 1 i
- jsr s10
- .o 0 1 i
- push_b 1
- .d 0 1 i
- jsr s10
- .o 0 1 i
- update_b 1 3
- update_b 0 2
- pop_b 2
- .d 0 2 ii
- jmp s1
- .o 0 2 ii
- s1
- eqI_b 0 1
- jmp_true case.8
- jmp case.9
- case.8
- update_b 0 1
- pop_b 1
- .d 0 1 i
- rtn
- case.9
- push_b 1
- push_b 1
- update_b 1 2
- update_b 0 1
- pop_b 1
- modI
- push_b 1
- update_b 1 2
- update_b 0 1
- pop_b 1
- .d 0 2 ii
- jmp s1
- .export e_StdInt_dlcm
- .export e_StdInt_slcm
- .export e_StdInt_nlcm
- .desc e_StdInt_dlcm e_StdInt_nlcm e_StdInt_llcm 2 "lcm"
- .o 2 0
- e_StdInt_llcm
- repl_args 1 1
- .d 2 0
- jsr ea26
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_dlcm
- .o 1 0
- e_StdInt_nlcm
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea26
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea26
- jsr_eval 1
- pushI_a 1
- update_a 0 1
- pop_a 1
- .o 1 1 i
- e_StdInt_slcm
- .o 1 1 i
- s26
- eqI_b 0 0
- jmp_true case.10
- jmp case.11
- case.10
- pop_a 1
- pop_b 1
- pushI 0
- .d 0 1 i
- rtn
- case.11
- jsr_eval 0
- eqI_a 0 0
- jmp_true case.12
- jmp case.13
- case.12
- pop_a 1
- pop_b 1
- pushI 0
- .d 0 1 i
- rtn
- case.13
- push_b 0
- pushI_a 0
- .d 0 2 ii
- jsr s25
- .o 0 1 i
- pushI_a 0
- pop_a 1
- divI
- push_b 1
- push_b 1
- update_b 1 2
- update_b 0 1
- pop_b 1
- update_b 1 2
- update_b 0 1
- pop_b 1
- mulI
- .d 0 1 i
- jmp s10
- .export e_StdInt_disEven
- .export e_StdInt_sisEven
- .export e_StdInt_nisEven
- .desc e_StdInt_disEven e_StdInt_nisEven e_StdInt_lisEven 1 "isEven"
- .o 2 0
- e_StdInt_lisEven
- pop_a 1
- .d 1 0
- jsr ea27
- .o 0 1 b
- buildB_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 1 e_StdInt_disEven
- .o 1 0
- e_StdInt_nisEven
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea27
- .o 0 1 b
- fillB_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 1 0
- ea27
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_sisEven
- .o 0 1 i
- s27
- .inline isEven
- pushI 1
- and%
- pushI 0
- eqI
- .end
- .d 0 1 b
- rtn
- .export e_StdInt_disOdd
- .export e_StdInt_sisOdd
- .export e_StdInt_nisOdd
- .desc e_StdInt_disOdd e_StdInt_nisOdd e_StdInt_lisOdd 1 "isOdd"
- .o 2 0
- e_StdInt_lisOdd
- pop_a 1
- .d 1 0
- jsr ea28
- .o 0 1 b
- buildB_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 1 e_StdInt_disOdd
- .o 1 0
- e_StdInt_nisOdd
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea28
- .o 0 1 b
- fillB_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 1 0
- ea28
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_sisOdd
- .o 0 1 i
- s28
- .inline isOdd
- pushI 1
- and%
- pushI 0
- eqI
- notB
- .end
- .d 0 1 b
- rtn
- .export e_StdInt_dbitor
- .export e_StdInt_sbitor
- .export e_StdInt_nbitor
- .desc e_StdInt_dbitor e_StdInt_nbitor e_StdInt_lbitor 2 "bitor"
- .o 2 0
- e_StdInt_lbitor
- repl_args 1 1
- .d 2 0
- jsr ea29
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_dbitor
- .o 1 0
- e_StdInt_nbitor
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea29
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea29
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_sbitor
- .o 0 2 ii
- s29
- .inline bitor
- or%
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_dbitand
- .export e_StdInt_sbitand
- .export e_StdInt_nbitand
- .desc e_StdInt_dbitand e_StdInt_nbitand e_StdInt_lbitand 2 "bitand"
- .o 2 0
- e_StdInt_lbitand
- repl_args 1 1
- .d 2 0
- jsr ea30
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_dbitand
- .o 1 0
- e_StdInt_nbitand
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea30
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea30
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_sbitand
- .o 0 2 ii
- s30
- .inline bitand
- and%
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_dbitxor
- .export e_StdInt_sbitxor
- .export e_StdInt_nbitxor
- .desc e_StdInt_dbitxor e_StdInt_nbitxor e_StdInt_lbitxor 2 "bitxor"
- .o 2 0
- e_StdInt_lbitxor
- repl_args 1 1
- .d 2 0
- jsr ea31
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_dbitxor
- .o 1 0
- e_StdInt_nbitxor
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea31
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea31
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_sbitxor
- .o 0 2 ii
- s31
- .inline bitxor
- xor%
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_d<<
- .export e_StdInt_s<<
- .export e_StdInt_n<<
- .desc e_StdInt_d<< e_StdInt_n<< e_StdInt_l<< 2 "<<"
- .o 2 0
- e_StdInt_l<<
- repl_args 1 1
- .d 2 0
- jsr ea32
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_d<<
- .o 1 0
- e_StdInt_n<<
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea32
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea32
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_s<<
- .o 0 2 ii
- s32
- .inline <<
- shiftl%
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_d>>
- .export e_StdInt_s>>
- .export e_StdInt_n>>
- .desc e_StdInt_d>> e_StdInt_n>> e_StdInt_l>> 2 ">>"
- .o 2 0
- e_StdInt_l>>
- repl_args 1 1
- .d 2 0
- jsr ea33
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 2 e_StdInt_d>>
- .o 1 0
- e_StdInt_n>>
- push_node _cycle_in_spine 2
- .d 2 0
- jsr ea33
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 2 0
- ea33
- jsr_eval 1
- jsr_eval 0
- pushI_a 1
- pushI_a 0
- pop_a 2
- .o 0 2 ii
- e_StdInt_s>>
- .o 0 2 ii
- s33
- .inline >>
- shiftr%
- .end
- .d 0 1 i
- rtn
- .export e_StdInt_dbitnot
- .export e_StdInt_sbitnot
- .export e_StdInt_nbitnot
- .desc e_StdInt_dbitnot e_StdInt_nbitnot e_StdInt_lbitnot 1 "bitnot"
- .o 2 0
- e_StdInt_lbitnot
- pop_a 1
- .d 1 0
- jsr ea34
- .o 0 1 i
- buildI_b 0
- pop_b 1
- .d 1 0
- rtn
- .n 1 e_StdInt_dbitnot
- .o 1 0
- e_StdInt_nbitnot
- push_node _cycle_in_spine 1
- .d 1 0
- jsr ea34
- .o 0 1 i
- fillI_b 0 0
- pop_b 1
- .d 1 0
- rtn
- .o 1 0
- ea34
- jsr_eval 0
- pushI_a 0
- pop_a 1
- .o 0 1 i
- e_StdInt_sbitnot
- .o 0 1 i
- s34
- .inline bitnot
- not%
- .end
- .inline lcm
- .end
- .inline gcd
- .end
- .inline abs;i
- .end
- .inline sign;i
- .end
- .inline ^;i
- .end
- .d 0 1 i
- rtn
-